package com.lgx.booking.entity;

import java.io.Serializable;
import java.util.Date;

import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import javax.persistence.TableGenerator;

import com.lgx.common.entity.IdGenerator;
import com.lgx.right.entity.User;

/**
 * 预订订单
 * 
 * @author hezhuo
 *
 */
@Entity
@Table(name="TB_ORDER_BOOKING")
public class OrderBooking implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1610907333602897381L;

	@Id
	@GeneratedValue(strategy=GenerationType.TABLE,generator=IdGenerator.ORDERBOOKING_ID)
	@TableGenerator(
			name = IdGenerator.ORDERBOOKING_ID,
			table = IdGenerator.GENERATOR_TABLE,
			pkColumnName = IdGenerator.GEN_NAME,
			pkColumnValue = IdGenerator.ORDERBOOKING_ID,
			valueColumnName = IdGenerator.GEN_VALUE,
			initialValue = 1,
			allocationSize = 1
	)
	private long id;
	
	/**
	 * 订单类型
	 */
	private String type;
	
	/**
	 * 预订人
	 */
	@ManyToOne
	@JoinColumn(name = "user_id")
	private User bookingUser;
	
	/**
	 * 预订时间
	 */
	private Date bookingTime;
	
	/**
	 * 订单状态
	 */
	private int status;
	
	/**
	 * 联系人
	 */
	private String linkMan;
	
	/**
	 * 联系电话
	 */
	private String linkPhone;
	
	/**
	 * 有效开始时间
	 */
	private Date beginVaildTime;
	
	/**
	 * 有效结束时间
	 */
	private Date endVaildTime;
	
	/**
	 * 应得积分
	 */
	private double score;

	/**
	 * 属性1
	 */
	private String prop1;
	
	/**
	 * 属性2
	 */
	private String prop2;
	
	/**
	 * 属性3
	 */
	private String prop3;
	
	private String isDelete;
	
	public String getIsDelete() {
		return isDelete;
	}

	public void setIsDelete(String isDelete) {
		this.isDelete = isDelete;
	}

	public long getId() {
		return id;
	}

	public void setId(long id) {
		this.id = id;
	}

	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}

	public User getBookingUser() {
		return bookingUser;
	}

	public void setBookingUser(User bookingUser) {
		this.bookingUser = bookingUser;
	}

	public Date getBookingTime() {
		return bookingTime;
	}

	public void setBookingTime(Date bookingTime) {
		this.bookingTime = bookingTime;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public String getLinkMan() {
		return linkMan;
	}

	public void setLinkMan(String linkMan) {
		this.linkMan = linkMan;
	}

	public String getLinkPhone() {
		return linkPhone;
	}

	public void setLinkPhone(String linkPhone) {
		this.linkPhone = linkPhone;
	}

	public Date getBeginVaildTime() {
		return beginVaildTime;
	}

	public void setBeginVaildTime(Date beginVaildTime) {
		this.beginVaildTime = beginVaildTime;
	}

	public Date getEndVaildTime() {
		return endVaildTime;
	}

	public void setEndVaildTime(Date endVaildTime) {
		this.endVaildTime = endVaildTime;
	}

	public double getScore() {
		return score;
	}

	public void setScore(double score) {
		this.score = score;
	}
	
	public String getProp1() {
		return prop1;
	}

	public void setProp1(String prop1) {
		this.prop1 = prop1;
	}

	public String getProp2() {
		return prop2;
	}

	public void setProp2(String prop2) {
		this.prop2 = prop2;
	}

	public String getProp3() {
		return prop3;
	}

	public void setProp3(String prop3) {
		this.prop3 = prop3;
	}
}
